package com.lzw.linspace.service;

import com.lzw.linspace.po.FileInfoPO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 上传服务类
 */
public interface UploadService {
    /**
     * 单个文件上传
     *
     * @param mFile    文件
     * @param filePath 文件路径
     */
    void uploadSingleFile(MultipartFile mFile, String filePath);

    /**
     * 删除一个文件
     *
     * @param id 文件id
     */
    void deleteSingleFileById(Long id);

    /**
     * 根据文件id修改文件名
     *
     * @param id           文件id
     * @param fileFullName 文件名全称（包括文件后缀）
     */
    void modifyFileNameById(Long id, String fileFullName);

    /**
     * 根据文件id修改路径
     *
     * @param id       文件id
     * @param filePath 文件路径
     */
    void modifyFilePathById(Long id, String filePath);

    /**
     * 获取文件信息列表
     *
     * @param fileInfoPO 文件信息
     * @return 文件信息列表
     */
    List<FileInfoPO> listFileInfoPO(FileInfoPO fileInfoPO);
}
